package messagepasser;

/**
 * 
 * @author Rishit Shroff(rshroff)
 * @author Huimin Yang(huiminy)
 * @description Abstract ClockService Class
 * 
 */

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

public abstract class ClockService implements Serializable, Cloneable{
	protected String clockType;
	public abstract void doService();
	public abstract void syncClock(List<String> nodeNames, ClockService clock);
	public abstract void initialize(List<String> nodeNames, String myName);
	public abstract Object clone();
	
	public boolean isLogical() {
		return (clockType.equals("Logical"));
	}
	
	public boolean isVector() {
		return (clockType.equals("Vector"));
	}
}
